package com.zmn.oms.model.vo.work;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * @description: 催单通话记录
 * @author: SongWeidong
 * @create: 2021-01-13
 **/
@Data
public class RemindRecordsVO {

    /**
     * 自增序号 id
     */
    private Integer id;

    /**
     * 提醒请求编号27位: yyyyMMddHHmmssSSS+3位ip+3位发起方标识+自增序号 remind_id
     */
    private String remindId;

    /**
     * 业务id：如：订单编号 biz_id
     */
    private String bizId;

    /**
     * 业务类型 ： remind_type
     */
    private Integer remindType;

    /**
     * 被叫用户类型：1 用户 2 工程师 user_type
     */
    private Integer userType;

    /**
     * 被叫号码 tel_phone
     */
    private String telPhone;

    /**
     * 平台标志、平台类型: 10啄木鸟，20言而有信，30一步维修SAAS，40川南环保 plat
     */
    private Integer plat;

    /**
     * 调用方标识：OMS PLAT app_key
     */
    private String appKey;

    /**
     * 中继号，sip外线号 trunk_no
     */
    private String trunkNo;

    /**
     * 被叫号码所属运营商ID mno_id
     */
    private Integer mnoId;

    /**
     * 被叫号码所属运营商名称：中国移动CMCC/中国联通CUCC/中国电信CTCC mno_name
     */
    private String mnoName;

    /**
     * 被叫号码归属地省ID  province_id
     */
    private Integer provinceId;

    /**
     * 被叫号码归属地省名称 province_name
     */
    private String provinceName;

    /**
     * 被叫号码归属地城市ID city_id
     */
    private Integer cityId;

    /**
     * 被叫号码归属地城市名称 city_name
     */
    private String cityName;

    /**
     * 挂断方：1 用户挂断 2 系统挂断 bye_user
     */
    private Integer byeUser;

    /**
     * 挂断原因：1正常、2超时、3异常、4超出提醒时间段、5黑名单用户 bye_reason
     */
    private Integer byeReason;

    /**
     * 录音文件url tape_url
     */
    private String tapeUrl;

    /**
     * 催单发起人ID launcher_staff_id
     */
    private Integer launcherStaffId;

    /**
     * 催单发起人姓名 launcher_staff_name
     */
    private String launcherStaffName;

    /**
     * 被催人姓名 real_name
     */
    private String realName;

    /**
     * 任务发起时间 launch_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date launchTime;

    /**
     * 任务处理时间 process_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date processTime;

    /**
     * 主叫开始时间 mo_start_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date moStartTime;

    /**
     * 主叫结束时间 mo_end_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date moEndTime;

    /**
     * 主叫持续时长 mo_duration
     */
    private Long moDuration;

    /**
     * 被叫开始时间 mt_start_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date mtStartTime;

    /**
     * 被叫结束时间 mt_end_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date mtEndTime;

    /**
     * 被叫持续时长 mt_duration
     */
    private Long mtDuration;

    /**
     * 重试次数 retry_count
     */
    private Integer retryCount;

    /**
     * 催单结果：1.失败 2.成功 3.取消 4.处理中 status
     */
    private Integer status;

    /**
     * 创建人 creater
     */
    private String creater;

    /**
     * 修改人 updater
     */
    private String updater;

    /**
     *  create_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date createTime;

    /**
     *  update_time
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date updateTime;


}
